Skip to content

_Schedule

https://cs144.github.io/

Course info

Course basics

LecturesMondays, Wednesday, & Fridays 1:30 p.m.–2:20 p.m. in Gates B1
Lab sessionsWednesdays, 7:30 p.m.–10 p.m. in STLC 114
Exams- Midterm: in class (replacing week 6 lab session): Wednesday, October 29, 7:30–9 p.m. (location Hewlett 200)
- Final: Wednesday, December 10, 3:30 p.m.–5:00 p.m. (location Cemex Auditorium)
Optional course texts- Kaashoek & Saltzer, “Principles of Computer System Design,” Chapters 7–8 (Networks & Fault Tolerance)
- Kurose & Ross, “Computer Networking: A Top-Down Approach”
- Peterson & Davie, “Computer Networks: A Systems Approach”
Practice exams-   Midterm (2021 Fall)  Midterm Answer (2021 Fall)
-   Midterm (2023 Spring)  Midterm Answer (2023 Spring)
-   Final (2021 Fall)  Final Answer (2021 Fall)
-   Final (2023 Spring)  Final Answer (2023 Spring)
ContactTo contact the course staff, please use Ed, the lab sessions, or office hours. You can also email the instructor—I’m here to help but also often behind on email!
Accommodations for DisabilitiesPlease use the submission form to submit OAE letters. Please don’t send these via email or Ed.
Syllabus/logistics Syllabus/logistics handout
EdCS144 on Ed. Please make public posts when possible so answers can benefit anybody. Please don’t post source code to lab solutions.
GradescopeWe use Gradescope for assignment submission and grading. The Gradescope entry code is 3X8XE2.
Office HoursCS144 Office Hours Queue. Please use the class calendar at the bottom of the page for the OH schedule.
Lecture videos (current year and archived 2024)Canvas Panopto Course Videos
Honor Code DiscussionIn-class discussion of permissible collaboration

Lab Assignment

FAQ Answers to common questions about lab assignment.

 Checkpoint 0: networking warmup

Out: September 22, due September 28, 11:59 p.m.

 Checkpoint 1: stitching substrings into a byte stream

Out: September 24, due October 5, 11:59 p.m.

 Checkpoint 2: the TCP receiver

Out: October 4, due October 12, 11:59 p.m.

 Checkpoint 3: the TCP sender

Out: October 12, due October 19, 11:59 p.m.

 Checkpoint 4: measuring the real world

Out: October 12, due October 26, 11:59 p.m.

 Checkpoint 5: down the stack (the network interface)

Out: November 2, due November 9, 11:59 p.m.

 Checkpoint 6: building an IP router

Out: November 3, due November 16, 11:59 p.m.

 Checkpoint 7: making an Internet + something creative!

Out: November 17, due December 5, 11:59 p.m.

Lecture Notes

Week 1 (Sept. 22–28)

Mon

Course intro   Stuff you should know about CS144

Wed

 Datagrams, encapsulation, and multiplexing

Fri

Reliability from unreliability   Slides   Lecture notes

Week 2 (Sept. 29–Oct. 3)

Mon

Reliability II

Wed

TCP I   Slides   Lecture notes

Week 3 (Oct. 6–Oct. 9)

Mon

TCP III & Packet Switching I   Slides   Lecture notes

Week 4 (Oct. 13–Oct. 17)

Mon

Why Congestion Control?   Slides   Lecture notes

Wed

What Congestion Control?   Slides   Lecture notes

Fri

How Congestion Control   Slides

Week 5 (Oct. 20–Oct. 24)

Wed/Fri

Routing  Slides

Week 6 (Oct. 27–Oct. 31)

Fri

The eras tour of home networking   Lecture notes

Week 7 (Nov. 3–Nov. 7)

Fri

The eras tour of home networking II   Lecture notes

Week 8 (Nov. 10–Nov. 14)

Mon

Elastic Buffers   Lecture notes